Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Лабораторна робота №3 Програмування, ч3

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2017
Тип роботи:
Лабораторна робота
Предмет:
Програмування алгоритмів цифрової обробки сигналів та зображень

Частина тексту файла

Міністерство освіти і науки України Національний університет „Львівська політехніка” Кафедра ЕОМ / Звіт про виконання лабораторної роботи №3 з дисципліни: “Програмування, частина 3 (Структури даних та алгоритми)” на тему:“ Перетворення типів даних ” Львів 2017 Мета: дослідження методів та засобів явного та неявного перетворення типів даних. Постановка задачі День народження студента = 07 Місяць народження студента = 08 Завдання №1 Оголошені наступні змінні: char x0 = 0; unsigned int x1 = 7; signed short int x2 = 2; long double x3 = 3; signed short int x4 = 4; unsigned short int x5 = 5; unsigned int x6 = 6; unsigned int x7 = 7; long double x8 = 8; unsigned int x9 = 9; unsigned int x10 = 10; unsigned short int x11 = 11; Потрібно визначити, які неявні перетворення будуть відбуватися при обчисленні таких виразів: x1 = x1 – 0xFFFFFFFA; x3 = ’a’ + x0 – x2; x7 = x4 + x5 + x6 * 0.1; x8 = x9 + x10 – x11*10; Завдання №2 Визначити, які явні і неявні перетворення типів будуть відбуватись. Результати обчислень підтвердити програмними результатами. В звіти пояснити кожне перетворення і кожний отриманий результат. int x = 2; //замість № підставити значення: DN % 5 float y = 1; // замість № підставити значення: DN % 3 char v4 = static_cast< char > (x) + 22; printf("%d %x %c \n", v4, v4, v4); short w6 = *(reinterpret_cast<short*>(&y) + 3) + 13; printf("%x %u %d \n", w6, w6, w6); char v0 = *reinterpret_cast<char*> (&x) + 3; printf("%d %x %c \n", v0 , v0, v0); short w3 = *reinterpret_cast<short*>(&y) + 1; printf("%x %u %d \n", w3, w3, w3); Система тестів Завдання 1 1. x1 = x1 – 0xFFFFFFFA; 1)”-“ unsigned int x1 -> signed int(0xFFFFFFFA) 2)”=” signed int -> unsigned int x1; Результат unsigned int, точність втрачається. 2) x3 = ’a’ + x0 – x2; ’a’ + x0 – відбулось не явне переведення char до типу signed int, дані не втратились. ’a’ + x0 – x2 – відбулось не явне переведення signed short int (х2) до типу signed int. Дані не втратились. x3 = ’a’ + x0 – x2; - відбулось не явне переведення signed int до типу double. Дані не втратились. 3) x7 = x4 + x5 + x6 * 0.1; x6 * 0.1 – відбулось не явне переведення unsigned int до типу signet int. Дані не втратились. x4 + x5 – відбулось не явне переведення signed short int до типу unsigned short int. Дані не втратились. x4 + x5 + x6 * 0.1 - відбулось не явне переведення unsigned short int до типу signet int. Дані не втратились. x7 = x4 + x5 + x6 * 0.1; - відбулось не явне переведення signet int до типу unsignet int. Дані не втратились. 4) x8 = x9 + x10 – x11*10; x11*10 – відбулось не явне переведення типів, загальний тип unsigned short int став signed int. Дані не втратились. x9 + x10 – переведення типів не відбулось, тому що х9 та х10 типу unsigned int. Дані не втратились. x9 + x10 – x11*10 – відбулось не явне переведення типe unsigned int до типу signed int. Дані не втратились. x8 = x9 + x10 – x11*10 – відбулось не явне перетворення signed int до long double. Дані не втратилися. / Рис.1 Результат виконання 1 завдання Завдання 2 1) static_cast< char > (x) – явне переведення типу int до типу char. static_cast< char > (x)+22 – не явне переведення типу char до типу int. char v4 = static_cast< char > (x)+22 - не явне переведення типу int до типу char. printf("%d %x %c \n", v4,v4,v4) – далі не явно переводимо перші два типи завдяки модифікаторам і виводимо змінні на екран. 1 модифікатор d – int,( відбулось переведення типу char до типу int ) 2 модифікатор х – int(16) ,( відбулось пе...
Антиботан аватар за замовчуванням

28.05.2019 17:05

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини